package com.itheim.test;
/*
 1.首先存在一个接口（Calculator）
    2. 在该接口中存在一个抽象方法（calc），该方法是有参数也有返回值
    3. 在测试类（CalculatorDemo）中存在一个方法（useCalculator）
        方法的的参数是Calculator类型的
        在方法内部调用了Calculator的calc方法
 */
public class CalculatorDemo {
    public static void main(String[] args) {
        //匿名内部类
        useCalculator((a,b) -> a+b);

        //lambda 表达式
        useCalculator((int a,int b)->{ return a*b;});


    }

    public static void useCalculator(Calculator hander){
        int a=10;
        int b=20;
        int result = hander.calc(a, b);
        System.out.println("通过计算 得出结果:"+result);
    }
}
interface Calculator{
  int  calc(int a,int b);
}